package site.shenjie.eureka.ribbon.feign.interceptor;

import feign.RequestInterceptor;
import feign.RequestTemplate;

/**
 * 沈杰
 * 2020-7-27 09:44:06
 * 拦截器：自定义认证拦截器
 * 当 Feign 去请求接口的时候，每次请求之前都会进入 本拦截器 的 apply 方法中，在里面就可以做属于你的逻辑了
 */
public class FeignBasicAuthRequestInterceptor implements RequestInterceptor {
    public FeignBasicAuthRequestInterceptor() {

    }

    /**
     * 或者你可以自定义属于自己的认证方式，其实就是自定义一个请求拦截器。
     * 在请求之前做认证操作，然后往请求头中设置认证之后的信息。
     * 通过实现 RequestInterceptor 接口来自定义认证方式，代码如下所示。
     */
    @Override
    public void apply(RequestTemplate requestTemplate) {
        // 业务逻辑
        System.out.println("正在进行自定义认证...");
    }
}
